// 用户相关类型定义
export interface UserInfo {
  ID: number;
  uuid: string;
  userName: string;
  nickName: string;
  headerImg: string;
  authorityId: number;
  authority: {
    authorityId: number;
    authorityName: string;
  };
  createdAt: string;
  updatedAt: string;
  // 扩展字段
  schoolName?: string;
  majorName?: string;
  signature?: string;
  phone?: string;
  email?: string;
  grade?: number;
  school?: number;
  major?: number;
  education?: number;
}

// 微信登录参数
export interface WechatLoginParams {
  loginCode: string;
  phoneCode: string;
}

// 登录响应
export interface LoginResponse {
  token: string;
  userInfo: UserInfo;
  expiresAt: number;
}

// 关注列表参数
export interface FollowListParams {
  page: number;
  pageSize: number;
  userIds?: string[];
  username?: string;
  nickName?: string;
  phone?: string;
  email?: string;
  grade?: number;
  school?: number;
  major?: number;
  education?: number;
  order?: string; // 排序字段: 'asc' 正序（最早关注）, 'desc' 倒序（最近关注）
}

// 分页响应基础类型
export interface PaginatedResponse<T> {
  list: T[];
  total: number;
  page: number;
  pageSize: number;
}

// 关注列表响应
export interface FollowListResponse {
  code: number;
  data: PaginatedResponse<UserInfo>;
  msg: string;
}
